package com.itheima.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.itheima.domain.po.EmpLoginLog;
import com.itheima.domain.po.OperateLog;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

@Mapper
public interface OperateLogMapper extends BaseMapper<OperateLog> {
    //插入日志数据
    @Insert("insert into operate_log (operate_emp_id, operate_time, class_name, method_name, method_params, return_value, cost_time) values (#{operateEmpId}, #{operateTime}, #{className}, #{methodName}, #{methodParams}, #{returnValue}, #{costTime})")
    void insertOperateLog(OperateLog log);

    //插入登录日志数据
    @Insert("insert into emp_login_log(username, password, login_time, is_success, jwt, cost_time) VALUES (#{username},#{password},#{loginTime},#{isSuccess},#{jwt},#{costTime})")
    void insertLoginLog(EmpLoginLog empLoginLog);

    //分页查询日志
    @Select("SELECT *,e.name operateEmpName from operate_log o left join emp e on e.id = o.operate_emp_id")
    Page<OperateLog> page(Integer page, Integer pageSize);
}